package com.weixinpay;

import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.Response;

public interface IWeiXinPayWebService {

	
	/**
	 * 功能：生成微信预支付ID（外放接口）;
	 * @param servletRequest
	 * @param servletResponse
	 * @param openID
	 * @param body
	 * @param detail
	 * @param out_trade_no
	 * @param total_fee
	 * @param spbill_create_ip
	 * @param trade_type
	 * 
	 * @return
	 * @throws Exception
	 * */
	@GET
	@Path("/weiXinJsPay")
	@Produces({ "application/json" })
	public Response weiXinJsPayRequest(
			@Context HttpServletRequest servletRequest,
			@Context HttpServletResponse servletResponse,
			@QueryParam("openID") String openID,
			@QueryParam("body") String body,
			@QueryParam("detail") String detail,
			@QueryParam("out_trade_no") String out_trade_no,
			@QueryParam("total_fee") String total_fee,
			@QueryParam("spbill_create_ip") String spbill_create_ip,
			@QueryParam("trade_type") String trade_type) throws Exception;

	/**
	 * 功能：生成微信预支付ID（内部调用）
	 * @param openID
	 * @param body
	 * @param detail
	 * @param out_trade_no
	 * @param total_fee
	 * @param spbill_create_ip
	 * @param trade_type
	 * 
	 * @return
	 * @throws Exception
	 **/
	public Map<String, String> weiXinJsPayJsp(String openID, String body,
			String detail, String out_trade_no, String total_fee,
			String spbill_create_ip, String trade_type) throws Exception;

}
